Collecting posture and activity information to evaluate therapy

ABSTRACT

A medical device, programmer, or other computing device may determine values of one or more activity and, in some embodiments, posture metrics for each therapy parameter set used by the medical device to deliver therapy. The metric values for a parameter set are determined based on signals generated by the sensors when that therapy parameter set was in use. Activity metric values may be associated with a postural category in addition to a therapy parameter set, and may indicate the duration and intensity of activity within one or more postural categories resulting from delivery of therapy according to a therapy parameter set. A posture metric for a therapy parameter set may indicate the fraction of time spent by the patient in various postures when the medical device used a therapy parameter set. The metric values may be used to evaluate the efficacy of the therapy parameter sets.

This application claims the benefit of U.S. Provisional Application Ser.No. 60/562,024, filed Apr. 14, 2004, the entire content of which isincorporated herein by reference.

TECHNICAL FIELD

The invention relates to medical devices and, more particularly, tomedical devices that deliver therapy.

BACKGROUND

In some cases, an ailment may affect a patient's activity level or rangeof activities by preventing the patient from being active. For example,chronic pain may cause a patient to avoid particular physicalactivities, or physical activity in general, where such activitiesincrease the pain experienced by the patient. Other ailments that mayaffect patient activity include movement disorders and congestive heartfailure. When a patient is inactive, he may be more likely to berecumbent, i.e., lying down, or sitting, and may change postures lessfrequently.

In some cases, these ailments are treated via a medical device, such asan implantable medical device (IMD). For example, patients may receivean implantable neurostimulator or drug delivery device to treat chronicpain or a movement disorder. Congestive heart failure may be treated by,for example, a cardiac pacemaker.

SUMMARY

In general, the invention is directed to techniques for evaluating atherapy delivered to a patient by a medical device based on patientactivity, posture, or both. At any given time, the medical devicedelivers the therapy according to a current set of therapy parameters.The therapy parameters may be changed over time such that the therapy isdelivered according to a plurality of different therapy parameter sets.The invention may provide techniques for evaluating the relativeefficacy of the plurality of therapy parameter sets.

A system according to the invention may include a medical device thatdelivers therapy to a patient, one or more programmers or othercomputing devices that communicate with the medical device, and one ormore sensors that generate signals as a function of at least one ofpatient activity and posture. The medical device, programmer, or othercomputing device may determine values of one or more activity metricsand, in some embodiments, may also determine posture metric values foreach therapy parameter set used by the medical device to delivertherapy. The activity and posture metric values for a therapy parameterset are determined based on the signals generated by the sensors whenthat therapy parameter set was in use. The activity metric value mayindicate a level of activity when the medical device used a particulartherapy parameter set. Activity metric values may be associated with apostural category in addition to a therapy parameter set, and mayindicate the duration and intensity of activity within one or morepostural categories resulting from delivery of therapy according to atherapy parameter set. A posture metric value for a therapy parameterset may indicate the fraction of time spent by the patient in variouspostures when the medical device used a particular therapy parameterset.

A clinician may use the one or more activity or posture metric values toevaluate therapy parameter sets used by the medical device to delivertherapy, or a sensitivity analysis may identify one or more potentiallyefficacious therapy parameter sets based on the metric values. In eithercase, the activity and/or posture metric values may be used. to evaluatethe relative efficacy of the parameter sets, and the parameter sets thatsupport the highest activity levels and most upright and active posturesfor the patient may be readily identified.

In one embodiment, the invention is directed to a method in which aplurality of signals are monitored. Each of the signals is generated bya sensor as a function of at least one of activity or posture of apatient. A posture of the patient is periodically identified based on atleast one of the signals, and each of the identified postures isassociated with a therapy parameter set currently used by a medicaldevice to deliver a therapy to a patient when the posture is identified.An activity level of the patient is periodically determined based on atleast one of the signals, and each of the determined activity levels isassociated with a therapy parameter set currently used by a medicaldevice to deliver a therapy to a patient when the activity level isidentified, and with a current one of the periodically identifiedpostures. For each of a plurality of therapy parameter sets used by themedical device to deliver therapy to the patient, a value of an activitymetric may be determined for each of the periodically identifiedpostures associated with the therapy parameter set based on the activitylevels associated with the posture and the therapy parameter set.

In another embodiment, the invention is directed to medical systemcomprising a plurality of sensors, each of the sensors generating asignal as a function of at least one of activity or posture of apatient, a medical device that delivers a therapy to the patient, and aprocessor. The processor monitors the signals generated by the sensors,periodically identifies a posture of the patient based on at least oneof the signals, associates each of the identified postures with atherapy parameter set currently used by a medical device to deliver atherapy to a patient when the posture is identified, periodicallydetermines an activity level of the patient based on at least one of thesignals, associates each of the determined activity levels with atherapy parameter set currently used by a medical device to deliver atherapy to a patient when the activity level is determined and a currentone of the periodically identified postures, and, for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, determines a value of an activity metricfor each of the periodically identified postures associated with thetherapy parameter set based on the activity levels associated with theposture and the therapy parameter set.

In another embodiment, the invention is directed to a computer-readablemedium comprising instructions. The instructions cause a programmableprocessor to monitor a plurality of signals, each of the signalsgenerated by a sensor as a function of at least one of activity orposture of a patient. The instructions further cause the processor toperiodically identify a posture of the patient based on at least one ofthe signals, and associate each of the identified postures with atherapy parameter set currently used by a medical device to deliver atherapy to a patient when the posture is identified. The instructionsfurther cause the processor to periodically determine an activity levelof the patient based on at least one of the signals, and associate eachof the determined activity levels with a therapy parameter set currentlyused by a medical device to deliver a therapy to a patient when theactivity level is determined and a current one of the periodicallyidentified postures. The instructions further cause the processor to,for each of a plurality of therapy parameter sets used by the medicaldevice to deliver therapy to the patient, determine a value of anactivity metric for each of the periodically identified posturesassociated with the therapy parameter set based on the activity levelsassociated with the posture and the therapy parameter set.

In another embodiment, the invention is directed to a method in which aplurality of signals are monitored, each of the signals generated by asensor as a function of at least one of activity or posture of apatient. Whether the patient is in a target posture is determined basedon at least one of the signals, and an activity level of the patient isperiodically determined based on at least one of the signals when thepatient is in the target posture. Each of the determined activity levelsis associated with a current therapy parameter set and, for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, a value of an activity metric isdetermined based on the activity levels associated with the therapyparameter set.

In another embodiment, the invention is directed to a medical systemcomprising a plurality of sensors, each of the sensors generating asignal as a function of at least one of activity or posture of apatient, a medical device that delivers a therapy to the patient, and aprocessor. The processor monitors the signals generated by the sensors,periodically identifies a posture of the patient based on at least oneof the signals, determines whether the patient is in target posturebased on at least one of the signals, periodically determines anactivity level of the patient based on at least one of the signals whenthe patient is in the target posture, associates each of the determinedactivity levels with a current therapy parameter set, and for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, determines a value of an activity metricbased on the activity levels associated with the therapy parameter set.

In another embodiment, the invention is directed to a computer-readablemedium comprising instructions. The instructions cause a programmableprocessor to monitor a plurality of signals, each of the signalsgenerated by a sensor as a function of at least one of activity orposture of a patient, determine whether the patient is in target posturebased on at least one of the signals, periodically determine an activitylevel of the patient based on at least one of the signals when thepatient is in the target posture, associate each of the determinedactivity levels with a current therapy parameter set, and for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, determine a value of an activity metricbased on the activity levels associated with the therapy parameter set.

The invention is capable of providing one or more advantages. Forexample, a medical system according to the invention may provide aclinician with an objective indication of the efficacy of different setsof therapy parameters. The indication of efficacy may be provided interms of the ability of the patient to assume particular postures andactivity levels for each given set of therapy parameters, permittingidentification of particular sets of therapy parameters that yield thehighest efficacy. Further, a medical device, programming device, orother computing device according to the invention may display therapyparameter sets and associated metric values in an ordered and, in somecases, sortable list, which may allow the clinician to more easilycompare the relative efficacies of a plurality of therapy parametersets. The medical system may be particularly useful in the context oftrial neurostimulation for treatment of chronic pain, where the patientis encouraged to try a plurality of therapy parameter sets to allow thepatient and clinician to identify efficacious therapy parameter sets.Further, in some embodiments, the system may provide at leastsemi-automated identification of potentially efficacious therapyparameter sets, through application of a sensitivity analysis to one ormore activity or posture metrics.

The details of one or more embodiments of the invention are set forth inthe accompanying drawings and the description below. Other features,objects, and advantages of the invention will be apparent from thedescription and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a conceptual diagram illustrating an example system thatincludes an implantable medical device that collects posture andactivity information according to the invention.

FIG. 2 is a block diagram further illustrating the example system andimplantable medical device of FIG. 1.

FIG. 3 is a block diagram illustrating an example memory of theimplantable medical device of FIG. 1.

FIG. 4 is a flow diagram illustrating an example method for collectingposture and activity information that may be employed by an implantablemedical device.

FIG. 5 is a flow diagram illustrating an example method for collectingactivity information based on patient posture that may be employed by animplantable medical device.

FIG. 6 is a block diagram illustrating an example clinician programmer.

FIG. 7 illustrates an example list of therapy parameter sets andassociated posture and activity metric values that may be presented by aclinician programmer.

FIG. 8 is a flow diagram illustrating an example method for displaying alist of therapy parameter sets and associated posture and activitymetric values that may be employed by a clinician programmer.

FIG. 9 is a flow diagram illustrating an example method for identifyinga therapy parameter set based on collected posture and/or activityinformation that may be employed by a medical device.

FIG. 10 is a conceptual diagram illustrating a monitor that monitorsvalues of one or more physiological parameters of the patient.

DETAILED DESCRIPTION

FIG. 1 is a conceptual diagram illustrating an example system 10 thatincludes an implantable medical device (IMD) 14 that collectsinformation relating to the activity and, in some embodiments, theposture of a patient 12. In the illustrated example system 10, IMD 14takes the form of an implantable neurostimulator that deliversneurostimulation therapy in the form of electrical pulses to patient 12.However, the invention is not limited to implementation via animplantable neurostimulator. For example, in some embodiments of theinvention, IMD 14 may take the form of an implantable pump orimplantable cardiac rhythm management device, such as a pacemaker, thatcollects activity and posture information. Further, the invention is notlimited to implementation via an IMD. In other words, any implantable orexternal medical device may collect activity and posture informationaccording to the invention.

In the example of FIG. 1, IMD 14 delivers neurostimulation therapy topatient 12 via leads 16A and 16B (collectively “leads 16”). Leads 16may, as shown in FIG. 1, be implanted proximate to the spinal cord 18 ofpatient 12, and IMD 14 may deliver spinal cord stimulation (SCS) therapyto patient 12 in order to, for example, reduce pain experienced bypatient 12. However, the invention is not limited to the configurationof leads 16 shown in FIG. 1 or the delivery of SCS therapy. For example,one or more leads 16 may extend from IMD 14 to the brain (not shown) ofpatient 12, and IMD 14 may deliver deep brain stimulation (DBS) therapyto patient 12 to, for example, treat tremor or epilepsy. As furtherexamples, one or more leads 16 may be implanted proximate to the pelvicnerves (not shown) or stomach (not shown), and IMD 14 may deliverneurostimulation therapy to treat incontinence, sexual dysfunction, orgastroparesis.

IMD 14 delivers therapy according to a set of therapy parameters, i.e.,a set of values for a number of parameters that define the therapydelivered according to that therapy parameter set. In embodiments whereIMD 14 delivers neurostimulation therapy in the form of electricalpulses, the parameters in each parameter set may include voltage orcurrent pulse amplitudes, pulse widths, pulse rates, duration, dutycycle and the like. Further, each of leads 16 includes electrodes (notshown in FIG. 1), and a therapy parameter set may include informationidentifying which electrodes have been selected for delivery of pulses,and the polarities of the selected electrodes. Therapy parameter setsused by IMD 14 may include a number of parameter sets programmed by aclinician (not shown), and parameter sets representing adjustments madeby patient 12 to these preprogrammed sets.

System 10 also includes a clinician programmer 20. The clinician may useclinician programmer 20 to program therapy for patient 12, e.g., specifya number of therapy parameter sets and provide the parameter sets to IMD14. The clinician may also use clinician programmer 20 to retrieveinformation collected by IMD 14. The clinician may use clinicianprogrammer 20 to communicate with IMD 14 both during initial programmingof IMD 14, and for collection of information and further programmingduring follow-up visits.

Clinician programmer 20 may, as shown in FIG. 1, be a handheld computingdevice. Clinician programmer 20 includes a display 22, such as a LCD orLED display, to display information to a user. Clinician programmer 20may also include a keypad 24, which may be used by a user to interactwith clinician programmer 20. In some embodiments, display 22 may be atouch screen display, and a user may interact with clinician programmer20 via display 22. A user may also interact with clinician programmer 20using peripheral pointing devices, such as a stylus or mouse. Keypad 24may take the form of an alphanumeric keypad or a reduced set of keysassociated with particular functions.

System 10 also includes a patient programmer 26, which also may, asshown in FIG. 1, be a handheld computing device. Patient 12 may usepatient programmer 26 to control the delivery of therapy by IMD 14. Forexample, using patient programmer 26, patient 12 may select a currenttherapy parameter set from among the therapy parameter setspreprogrammed by the clinician, or may adjust one or more parameters ofa preprogrammed therapy parameter set to arrive at the current therapyparameter set.

Patient programmer 26 may include a display 28 and a keypad 30, to allowpatient 12 to interact with patient programmer 26. In some embodiments,display 26 may be a touch screen display, and patient 12 may interactwith patient programmer 26 via display 28. Patient 12 may also interactwith patient programmer 26 using peripheral pointing devices, such as astylus, mouse, or the like.

Clinician and patient programmers 20, 26 are not limited to thehand-held computer embodiments illustrated in FIG. 1. Programmers 20, 26according to the invention may be any sort of computing device. Forexample, a programmer 20, 26 according to the invention may be atablet-based computing device, a desktop computing device, or aworkstation.

IMD 14, clinician programmer 20 and patient programmer 26 may, as shownin FIG. 1, communicate via wireless communication. Clinician programmer20 and patient programmer 26 may, for example, communicate via wirelesscommunication with IMD 14 using radio frequency (RF) or infraredtelemetry techniques known in the art. Clinician programmer 20 andpatient programmer 26 may communicate with each other using any of avariety of local wireless communication techniques, such as RFcommunication according to the 802.11 or Bluetooth specification sets,infrared communication according to the IRDA specification set, or otherstandard or proprietary telemetry protocols.

Clinician programmer 20 and patient programmer 26 need not communicatewirelessly, however. For example, programmers 20 and 26 may communicatevia a wired connection, such as via a serial communication cable, or viaexchange of removable media, such as magnetic or optical disks, ormemory cards or sticks. Further, clinician programmer 20 may communicatewith one or both of IMD 14 and patient programmer 26 via remotetelemetry techniques known in the art, communicating via a local areanetwork (LAN), wide area network (WAN), public switched telephonenetwork (PSTN), or cellular telephone network, for example.

As mentioned above, IMD 14 collects patient activity information.Specifically, as will be described in greater detail below, IMD 14periodically determines an activity level of patient 12 based on asignal that varies as a function of patient activity. An activity levelmay comprise, for example, a number of activity counts, or a value for aphysiological parameter that reflects patient activity.

In some embodiments, IMD 14 also collects patient posture information.In such embodiments, IMD 14 may monitor one or more signals that vary asa function of patient posture, and may identify postures based on thesignals. IMD 14 may, for example, periodically identify the posture ofpatient 12 or transitions between postures made by patient 12. Forexample, IMD 14 may identify whether the patient is upright orrecumbent, e.g., lying down, whether the patient is standing, sitting,or recumbent, or transitions between such postures.

In exemplary embodiments, as will be described in greater detail below,IMD 14 monitors the signals generated by a plurality of accelerometers.In such embodiments, IMD 14 may both determine activity levels andidentify postures or postural transitions based on the accelerometersignals. Specifically, IMD 14 may compare the DC components of theaccelerometer signals to one or more thresholds to identify postures,and may compare a non-DC portion of one or more of the signals to one ormore thresholds to determine activity levels.

Over time, IMD 14 may use a plurality of different therapy parametersets to deliver the therapy to patient 12. In some embodiments, IMD 14associates each determined posture with the therapy parameter set thatis currently active when the posture is identified. In such embodiments,IMD 14 may also associate each determined activity level with thecurrently identified posture, and with the therapy parameter set that iscurrently active when the activity level is determined. In otherembodiments, IMD 14 may use posture to control whether activity levelsare monitored. In such embodiments, IMD 14 determines whether patient 12is in a target posture, e.g., a posture of interest such as upright orstanding, and determines activity levels for association with currenttherapy parameter sets during periods when the patient is in the targetposture.

In either case, IMD 14 may determine at least one value of one or moreactivity metrics for each of the plurality of therapy parameter setsbased on the activity levels associated with the therapy parameter sets.An activity metric value may be, for example, a mean or median activitylevel, such as an average number of activity counts per unit time. Inother embodiments, an activity metric value may be chosen from apredetermined scale of activity metric values based on a comparison of amean or median activity level to one or more threshold values. The scalemay be numeric, such as activity metric values from 1-10, orqualitative, such as low, medium or high activity.

In some embodiments, each activity level associated with a therapyparameter set is compared with the one or more thresholds, andpercentages of time above and/or below the thresholds are determined asone or more activity metric values for that therapy parameter set. Inother embodiments, each activity level associated with a therapyparameter set is compared with a threshold, and an average length oftime that consecutively determined activity levels remain above thethreshold is determined as an activity metric value for that therapyparameter set.

In embodiments in which IMD 14 associates identified postures with thecurrent therapy parameter set, and associates each determined activitylevel with a current posture and the current therapy parameter set, IMD14 may, for each therapy parameter set, identify the plurality ofpostures assumed by patient 12 when that therapy parameter set was inuse. IMD 14 may then determine a value of one or more activity metricsfor each therapy parameter set/posture pair based on the activity levelsassociated with that therapy parameter set/posture pair.

Further, for each therapy parameter set, IMD 14 may also determine avalue of one or more posture metrics based on the postures or posturaltransitions associated with that therapy parameter set. A posture metricvalue may be, for example, an amount or percentage of time spent in aposture while a therapy parameter set is active, e.g., an average amountof time over a period of time, such as an hour, that patient 12 waswithin a particular posture. In some embodiments, a posture metric valuemay be an average number of posture transitions over a period of time,e.g., an hour.

In some embodiments, a plurality of activity metric values aredetermined for each of the plurality of therapy parameter sets, orparameter set/posture pairs. In such embodiments, an overall activitymetric value may be determined. For example, the plurality of individualactivity metric values may be used as indices to identify an overallactivity metric value from a look-up table. The overall activity metricmay be selected from a predetermined scale of activity metric values,which may be numeric, such as activity metric values from 1-10, orqualitative, such as low, medium or high activity.

Similarly, in some embodiments, a plurality of posture metric values isdetermined for each of the plurality of therapy parameter sets. In suchembodiments, an overall posture metric value may be determined. Forexample, the plurality of individual posture metric values may be usedas indices to identify an overall posture metric value from a look-uptable. The overall posture metric may be selected from a predeterminedscale of posture metric values, which may be numeric, such as posturemetric values from 1-10.

Although described herein primarily with reference to IMD 14, one ormore of IMD 14, clinician programmer 20, patient programmer 26, oranother computing device may determine activity and posture metricvalues in the manner described herein with reference to IMD 14. Forexample, in some embodiments, IMD 14 determines and stores metricvalues, and provides information identifying therapy parameter sets andthe metric values associated with the therapy parameter sets, to one orboth of programmers 20, 26. In other embodiments, IMD 14 providesinformation identifying the therapy parameter sets and associatedposture events and activity levels to one or both of programmers 20, 26,or another computing device, and the programmer or other computingdevice determines activity and posture metric values for each of thetherapy parameter sets.

In either of these embodiments, programmers 20, 26 or the othercomputing device may present information to a user that may be used toevaluate the therapy parameter sets based on the activity and posturemetric values. For ease of description, the presentation of informationthat may be used to evaluate therapy parameter sets will be describedhereafter with reference to embodiments in which clinician programmer 20presents information to a clinician. However, it is understood that, insome embodiments, patient programmer 26 or another computing device maypresent such information to a user, such as a clinician or patient 12.

For example, in some embodiments, clinician programmer 20 may present alist of the plurality of parameter sets and associated posture andactivity metric values to the clinician via display 22. Where values aredetermined for a plurality of posture and activity metrics for each ofthe therapy parameter sets, programmer 20 may order the list accordingto the values of one of the metrics that is selected by the clinician.Programmer 20 may also present other activity and/or posture informationto the clinician, such as graphical representations of activity and/orposture. For example, programmer 20 may present a trend diagram ofactivity or posture over time, or a histogram or pie chart illustratingpercentages of time that activity levels were within certain ranges orthat patient 12 assumed certain postures. Programmer 20 may generatesuch charts or diagrams using activity levels or posture eventsassociated with a particular one of the therapy parameter sets, or allof the activity levels and posture events determined by IMD 14.

However, the invention is not limited to embodiments that includeprogrammers 20, 26 or another computing device, or embodiments in whicha programmer or other computing device presents posture and activityinformation to a user. For example, in some embodiments, an externalmedical device comprises a display. In such embodiments, the externalmedical device both determines the metric values for the plurality oftherapy parameter sets, and presents the list of therapy parameter setsand associated metric values.

Further, the invention is not limited to embodiments in which a medicaldevice determines activity levels or identifies postures. For example,in some embodiments, IMD 14 may instead periodically record samples ofone or more signals, and associate the samples with a current therapyparameter set. In such embodiments, a programmer 20, 26 or anothercomputing device may receive information identifying a plurality oftherapy parameter sets and the samples associated with the parametersets, determine activity levels and identify postures and posturaltransitions based on the samples, and determine one or more activityand/or posture metric values for each of the therapy parameter setsbased on the determined activity levels and identified postures.

Moreover, the invention is not limited to embodiments in which thetherapy delivering medical device includes or is coupled to the sensorsthat generate a signal as a function of patient activity or posture. Insome embodiments, system 10 may include a separate implanted or externalmonitor that includes or is coupled to such sensors. The monitor mayprovide samples of the signals generated by such sensors to the IMD,programmers or other computing device for determination of activitylevels, postures, activity metric values and posture metric values asdescribed herein.

The monitor may provide the samples in real-time, or may record samplesfor later transmission. In embodiments where the monitor records thesamples for later transmission, the monitor may associate the sampleswith the time they were recorded. In such embodiments, the IMD 14 mayperiodically record indications of a currently used therapy parameterset and the current time. Based on the association of recorded signalsamples and therapy parameter sets with time, the recorded signalsamples may be associated with current therapy parameter sets fordetermination of activity and posture metric values as described herein.

In some embodiments, in addition to, or as an alternative to thepresentation of information to a clinician for evaluation of therapyparameter sets, one or more of IMD 14, programmers 20, 26, or anothercomputing device may identify therapy parameter sets for use in deliveryof therapy to patient 12 based on a sensitivity analysis of one or moreactivity and/or posture metrics. The sensitivity analysis identifiesvalues of therapy parameters that define a substantially maximum orminimum value of the one or more metrics. In particular, as will bedescribed in greater detail below, one or more of IMD 14 and programmers20, 26 conducts the sensitivity analysis of the one or more metrics, andidentifies at least one baseline therapy parameter set that includes thevalues for individual therapy parameters that were identified based onthe sensitivity analysis. IMD 14 may delivery therapy according to thebaseline therapy parameter set. Furthermore, one or more of IMD 14 andprogrammers 20, 26 may periodically perturb at least one therapyparameter value of the baseline therapy parameter set to determinewhether the baseline therapy parameter set still defines a substantiallymaximum or minimum value of the one or more metrics. If the baselinetherapy parameter set no longer defines a substantially maximum orminimum value of the one or more metrics, a search may be performed toidentify a new baseline therapy parameter set for use in delivery oftherapy to patient 12.

FIG. 2 is a block diagram further illustrating system 10. In particular,FIG. 2 illustrates an example configuration of IMD 14 and leads 16A and16B. FIG. 2 also illustrates sensors 40A and 40B (collectively “sensors40”) that generate signals that vary as a function of patient activityand/or posture. As will be described in greater detail below, IMD 14monitors the signals, and may periodically identify the posture ofpatient 12 and determine an activity level based on the signals.

IMD 14 may deliver neurostimulation therapy via electrodes 42A-D of lead16A and electrodes 42E-H of lead 16B (collectively “electrodes 40”).Electrodes 40 may be ring electrodes. The configuration, type and numberof electrodes 40 illustrated in FIG. 2 are merely exemplary. Forexample, leads 16A and 16B may each include eight electrodes 40, and theelectrodes 42 need not be arranged linearly on each of leads 16A and16B.

Electrodes 42 are electrically coupled to a therapy delivery module 44via leads 16A and 16B. Therapy delivery module 44 may, for example,include an output pulse generator coupled to a power source such as abattery. Therapy delivery module 44 may deliver electrical pulses topatient 12 via at least some of electrodes 42 under the control of aprocessor 46, which controls therapy delivery module 44 to deliverneurostimulation therapy according to a current therapy parameter set.However, the invention is not limited to implantable neurostimulatorembodiments or even to IMDs that deliver electrical stimulation. Forexample, in some embodiments a therapy delivery module 44 of an IMD mayinclude a pump, circuitry to control the pump, and a reservoir to storea therapeutic agent for delivery via the pump.

Processor 46 may include a microprocessor, a controller, a digitalsignal processor (DSP), an application specific integrated circuit(ASIC), a field-programmable gate array (FPGA), discrete logiccircuitry, or the like. Memory 48 may include any volatile,non-volatile, magnetic, optical, or electrical media, such as a randomaccess memory (RAM), read-only memory (ROM), non-volatile RAM (NVRAM),electrically-erasable programmable ROM (EEPROM), flash memory, and thelike. In some embodiments, memory 48 stores program instructions that,when executed by processor 46, cause IMD 14 and processor 46 to performthe functions attributed to them herein.

Each of sensors 40 generates a signal that varies as a function ofpatient activity and/or posture. IMD 14 may include circuitry (notshown) that conditions the signals generated by sensors 40 such thatthey may be analyzed by processor 46. For example, IMD 14 may includeone or more analog to digital converters to convert analog signalsgenerated by sensors 40 into digital signals usable by processor 46, aswell as suitable filter and amplifier circuitry. Although shown asincluding two sensors 40, system 10 may include any number of sensors.

Further, as illustrated in FIG. 2, sensors 40 may be included as part ofIMD 14, or coupled to IMD 14 via leads 16. Sensors 40 may be coupled toIMD 14 via therapy leads 16A and 16B, or via other leads 16, such aslead 16C depicted in FIG. 2. In some embodiments, a sensor 40 locatedoutside of IMD 14 may be in wireless communication with processor 46.Wireless communication between sensors 40 and IMD 14 may, as examples,include RF communication or communication via electrical signalsconducted through the tissue and/or fluid of patient 12.

In exemplary embodiments, sensors 40 include a plurality ofaccelerometers, e.g., three accelerometers, which are orientedsubstantially orthogonally with respect to each other. In addition tobeing oriented orthogonally with respect to each other, each ofaccelerometers may be substantially aligned with an axis of the body ofpatient 12. The magnitude and polarity of DC components of the signalsgenerated by the accelerometers indicate the orientation of the patientrelative to the Earth's gravity, and processor 46 may periodicallyidentify the posture or postural changes of patient 12 based on themagnitude and polarity of the DC components. Further informationregarding use of orthogonally aligned accelerometers to determinepatient posture may be found in a commonly assigned U.S. Pat. No.5,593,431, which issued to Todd J. Sheldon.

Processor 46 may periodically determine the posture of patient 12, andmay store indications of the determined postures within memory 48. Wheresystem 10 includes a plurality of orthogonally aligned accelerometerslocated on or within the trunk of patient 12, e.g., within IMD 14 whichis implanted within the abdomen of patient 12 as illustrated in FIG. 1,processor 46 may be able to periodically determine whether patient is,for example, upright or recumbent, e.g., lying down. In embodiments ofsystem 10 that include an additional one or more accelerometers at otherlocations on or within the body of patient 12, processor 46 may be ableto identify additional postures of patient 12. For example, in anembodiment of system 10 that includes one or more accelerometers locatedon or within the thigh of patient 12, processor 46 may be able toidentify whether patient 12 is standing, sitting, or lying down.Processor 46 may also identify transitions between postures based on thesignals output by the accelerometers, and may store indications of thetransitions, e.g., the time of transitions, within memory 48.

Processor 46 may identify postures and posture transitions by comparingthe signals generated by the accelerometers to one or more respectivethreshold values. For example, when patient 12 is upright, a DCcomponent of the signal generated by one of the plurality oforthogonally aligned accelerometers may be substantially at a firstvalue, e.g., high or one, while the DC components of the signalsgenerated by the others of the plurality of orthogonally alignedaccelerometers may be substantially at a second value, e.g., low orzero. When patient 12 becomes recumbent, the DC component of the signalgenerated by one of the plurality of orthogonally aligned accelerometersthat had been at the second value when the patient was upright maychange to the first value, and the DC components of the signalsgenerated by others of the plurality of orthogonally alignedaccelerometers may remain at or change to the second value. Processor 46may compare the signals generated by such sensors to respectivethreshold values stored in memory 48 to determine whether they aresubstantially at the first or second value, and to identify when thesignals change from the first value to the second value.

Processor 46 may determine an activity level based on one or more of theaccelerometer signals by sampling the signals and determining a numberof activity counts during the sample period. For example, processor 46may compare the sample of a signal generated by an accelerometer to oneor more amplitude thresholds stored within memory 48, and may identifyeach threshold crossing as an activity count. Where processor 46compares the sample to multiple thresholds with varying amplitudes,processor 46 may identify crossing of higher amplitude thresholds asmultiple activity counts. Using multiple thresholds to identify activitycounts, processor 46 may be able to more accurately determine the extentof patient activity for both high impact, low frequency and low impact,high frequency activities. Processor 46 may store the determined numberof activity counts in memory 48 as an activity level. In someembodiments, IMD 14 may include a filter (not shown), or processor 46may apply a digital filter, that passes a band of the accelerometersignal from approximately 0.1 Hz to 10 Hz, e.g., the portion of thesignal that reflects patient activity.

Processor 46 may identify postures and record activity levelscontinuously or periodically, e.g., one sample of the signals output bysensors 40 every minute or continuously for ten minutes each hour.Further, processor 46 need not identify postures and record activitylevels with the same frequency. For example, processor 46 may identifypostures less frequently then activity levels are determined.

In some embodiments, processor 46 limits recording of postures andactivity levels to relevant time periods, i.e., when patient 12 is awakeor likely to be awake, and therefore likely to be active. For example,patient 12 may indicate via patient programmer 26 when patient is goingto sleep or has awoken. Processor 46 may receive these indications via atelemetry circuit 50 of IMD 14, and may suspend or resume recording ofposture events based on the indications. In other embodiments, processor46 may maintain a real-time clock, and may record posture events basedon the time of day indicated by the clock, e.g., processor 46 may limitposture event recording to daytime hours. Alternatively, processor 46may wirelessly interact with a real-time clock within the patientprogrammer.

In some embodiments, processor 46 may monitor one or more physiologicalparameters of patient 12 via signals generated by sensors 40, and maydetermine when patient 12 is attempting to sleep or asleep based on thephysiological parameters. For example, processor 46 may determine whenpatient 12 is attempting to sleep by monitoring the posture of patient12 to determine when patient 12 is recumbent.

In order to determine whether patient 12 is asleep, processor 46 maymonitor any one or more physiological parameters that discernibly changewhen patient 12 falls asleep, such as activity level, heart rate, ECGmorphological features, respiration rate, respiratory volume, bloodpressure, blood oxygen saturation, partial pressure of oxygen withinblood, partial pressure of oxygen within cerebrospinal fluid, muscularactivity and tone, core temperature, subcutaneous temperature, arterialblood flow, brain electrical activity, eye motion, and galvanic skinresponse. Processor 46 may additionally or alternatively monitor thevariability of one or more of these physiological parameters, such asheart rate and respiration rate, which may discernible change whenpatient 12 is asleep. Further details regarding monitoring physiologicalparameters to identify when a patient is attempting to sleep and whenthe patient is asleep may be found in a commonly-assigned and co-pendingU.S. patent application by Kenneth Heruth and Keith Miesel, entitled“DETECTING SLEEP,” which was assigned Ser. No. 11/081,786 and filed Mar.16, 2005, and is incorporated herein by reference in its entirety.

In other embodiments, processor 46 may record postures and activitylevels in response to receiving an indication from patient 12 viapatient programmer 26. For example, processor 46 may record postures andactivity levels during times when patient 12 believes the therapydelivered by IMD 14 is ineffective and/or the symptoms experienced bypatient 12 have worsened. In this manner, processor 46 may limit datacollection to periods in which more probative data is likely to becollected, and thereby conserve a battery and/or storage space withinmemory 48.

Although described above with reference to an exemplary embodiment inwhich sensors 40 include accelerometers, sensors 40 may include any of avariety of types of sensors that generate signals as a function ofpatient posture and/or activity. For example, sensors 40 may includeorthogonally aligned gyros or magnetometers that generate signals thatindicate the posture of patient 12.

Other sensors 40 that may generate a signal that indicates the postureof patient 12 include electrodes that generate an electromyogram (EMG)signal, or bonded piezoelectric crystals that generate a signal as afunction of contraction of muscles. Such sensors 40 may be implanted inthe legs, buttocks, abdomen, or back of patient 12, as described above.The signals generated by such sensors when implanted in these locationsmay vary based on the posture of patient 12, e.g., may vary based onwhether the patient is standing, sitting, or lying down.

Further, the posture of patient 12 may affect the thoracic impedance ofthe patient. Consequently, sensors 40 may include an electrode pair,including one electrode integrated with the housing of IMD 14 and one ofelectrodes 42, that generates a signal as a function of the thoracicimpedance of patient 12, and processor 46 may detect the posture orposture changes of patient 12 based on the signal. The electrodes of thepair may be located on opposite sides of the patient's thorax. Forexample, the electrode pair may include one of electrodes 42 locatedproximate to the spine of a patient for delivery of SCS therapy, and IMD14 with an electrode integrated in its housing may be implanted in theabdomen of patient 12.

Additionally, changes of the posture of patient 12 may cause pressurechanges with the cerebrospinal fluid (CSF) of the patient. Consequently,sensors 40 may include pressure sensors coupled to one or moreintrathecal or intracerebroventricular catheters, or pressure sensorscoupled to IMD 14 wirelessly or via lead 16. CSF pressure changesassociated with posture changes may be particularly evident within thebrain of the patient, e.g., may be particularly apparent in anintracranial pressure (ICP) waveform.

Other sensors 40 that output a signal as a function of patient activitymay include one or more bonded piezoelectric crystals, mercury switches,or gyros that generate a signal as a function of body motion, footfallsor other impact events, and the like. Additionally or alternatively,sensors 40 may include one or more electrodes that generate anelectromyogram (EMG) signal as a function of muscle electrical activity,which may indicate the activity level of a patient. The electrodes maybe, for example, located in the legs, abdomen, chest, back or buttocksof patient 12 to detect muscle activity associated with walking,running, or the like. The electrodes may be coupled to IMD 14 wirelesslyor by leads 16 or, if IMD 14 is implanted in these locations, integratedwith a housing of IMD 14.

However, bonded piezoelectric crystals located in these areas generatesignals as a function of muscle contraction in addition to body motion,footfalls or other impact events. Consequently, use of bondedpiezoelectric crystals to detect activity of patient 12 may be preferredin some embodiments in which it is desired to detect muscle activity inaddition to body motion, footfalls, or other impact events. Bondedpiezoelectric crystals may be coupled to IMD 14 wirelessly or via leads16, or piezoelectric crystals may be bonded to the can of IMD 14 whenthe IMD is implanted in these areas, e.g., in the back, chest, buttocksor abdomen of patient 12.

Further, in some embodiments, processor 46 may monitor one or moresignals that indicate a physiological parameter of patient 12, which inturn varies as a function of patient activity. For example, processor 46may monitor a signal that indicates the heart rate, ECG morphology,respiration rate, respiratory volume, core or subcutaneous temperature,or muscular activity of the patient, and sensors 40 may include anyknown sensors that output a signal as a function of one or more of thesephysiological parameters. In such embodiments, processor 46 mayperiodically determine a heart rate, value of an ECG morphologicalfeature, respiration rate, respiratory volume, core temperature, ormuscular activity level of patient 12 based on the signal. Thedetermined values of these parameters may be mean or median values.

In some embodiments, processor 46 compares a determined value of such aphysiological parameter to one or more thresholds or a look-up tablestored in memory to determine a number of activity counts, and storesthe determined number of activity counts in memory 48 as a determinedactivity level. In other embodiments, processor 46 may store thedetermined physiological parameter value as a determined activity level.The use of activity counts, however, may allow processor 46 to determinean activity level based on a plurality of signals generated by aplurality of sensors 40. For example, processor 46 may determine a firstnumber of activity counts based on a sample of an accelerometer signaland a second number of activity counts based on a heart rate determinedfrom an electrogram signal at the time the accelerometer signal wassampled. Processor 46 may determine an activity level by calculating thesum or average, which may be a weighted sum or average, of first andsecond activity counts.

As described above, the invention is not limited to embodiments in whichIMD 14 determines postures or activity levels. In some embodiments,processor 46 may periodically store samples of the signals generated bysensors 40 in memory 48, rather than postures and activity levels, andmay associate those samples with the current therapy parameter set.

FIG. 3 illustrates memory 48 of IMD 14 in greater detail. As shown inFIG. 3, memory 48 stores information describing a plurality of therapyparameter sets 60. Therapy parameter sets 60 may include parameter setsspecified by a clinician using clinician programmer 20. Therapyparameter sets 60 may also include parameter sets that are the result ofpatient 12 changing one or more parameters of one of the preprogrammedtherapy parameter sets. For example, patient 12 may change parameterssuch as pulse amplitude, frequency or pulse width.

Memory 48 also stores postures 62 or postural transitions identified byprocessor 46. When processor 46 identifies a posture 62 or posturaltransition as discussed above, processor 46 associates the posture orpostural transition with the current one of therapy parameter sets 60,e.g., the one of therapy parameter sets 60 that processor 46 iscurrently using to control delivery of therapy by therapy module 44 topatient 12. For example, processor 46 may store determined postures 62within memory 48 with an indication of the parameter sets 60 with whichthey are associated. In other embodiments, processor 46 stores samples(not shown) of signals generated by sensors 40 as a function of posturewithin memory 48 with an indication of the parameter sets 60 with whichthey are associated.

Memory 48 also stores the activity levels 64 determined by processor 46.When processor 46 determines an activity level as discussed above,processor 46 associates the determined activity level 64 with thecurrent therapy parameter set 60, e.g., the one of therapy parametersets 60 that processor 46 is currently using to control delivery oftherapy by therapy module 44 to patient 12. In some embodiments, forexample, processor 46 may store determined activity levels 64 withinmemory 48 with an indication of the posture 62 and parameter sets 60with which they are associated. In other embodiments, processor 46stores samples (not shown) of signals generated by sensors 40 as afunction of patient activity within memory 48 with an indication of theposture 62 and parameter sets 60 with which they are associated.

In some embodiments, processor 46 determines a value of one or moreactivity metrics for each of therapy parameter sets 60 based on theactivity levels 64 associated with the parameter sets 60. In suchembodiments, processor 46 may store the determined activity metricvalues 70 within memory 48 with an indication as to which of therapyparameter sets 60 the determined values are associated with. Forexample, processor 46 may determine a mean or median of activity levelsassociated with a therapy parameter set, and store the mean or medianactivity level as an activity metric value 70 for the therapy parameterset.

In embodiments in which activity levels 64 comprise activity counts,processor 46 may store, for example, an average number of activitycounts per unit time as an activity metric value. An average number ofactivity counts over some period substantially between ten and sixtyminutes, for example, may provide a more accurate indication of activitythan an average over shorter periods by ameliorating the effect oftransient activities on an activity signal or physiological parameters.For example, rolling over in bed may briefly increase the amplitude ofan activity signal and a heart rate, possibly skewing the efficacyanalysis.

In other embodiments, processor 46 may compare a mean or median activitylevel to one or more threshold values, and may select an activity metricvalue from a predetermined scale of activity metric values based on thecomparison. The scale may be numeric, such as activity metric valuesfrom 1-10, or qualitative, such as low, medium or high activity. Thescale of activity metric values may be, for example, stored as a look-uptable within memory 48. Processor 46 stores the activity metric value 70selected from the scale within memory 48.

In some embodiments, processor 46 compares each activity level 64associated with a therapy parameter set 60 to one or more thresholdvalues. Based on the comparison, processor 46 may determine percentagesof time above and/or below the thresholds, or within threshold ranges.Processor 46 may store the one or more determined percentages withinmemory 48 as one or more activity metric values 70 for that therapyparameter set. In other embodiments, processor 46 compares each activitylevel 64 associated with a therapy parameter set 60 to a thresholdvalues, and determines an average length of time that consecutivelyrecorded activity levels 64 remained above the threshold as an activitymetric value 70 for that therapy parameter set.

In some embodiments, processor 46 determines a plurality of activitymetric values for each of the plurality of therapy parameter sets, anddetermines an overall activity metric value for a parameter set based onthe values of the individual activity metrics for that parameter set.For example, processor 46 may use the plurality of individual activitymetric values as indices to identify an overall activity metric valuefrom a look-up table stored in memory 48. Processor 46 may select theoverall metric value from a predetermined scale of activity metricvalues, which may be numeric, such as activity metric values from 1-10,or qualitative, such as low, medium or high activity.

Further, as discussed above, processor 46 may identify the plurality ofpostures assumed by patient 12 over the times that a therapy parameterset was active based on the postures 62 associated with that therapyparameter set. In such embodiments, processor 46 may determine aplurality of values of an activity metric for each therapy parameter setand posture, e.g., a value of the activity metric for each parameterset/posture pair. Processor 46 may determine an activity metric value 70for a parameter set/posture pair based on the activity levels 64associated with the therapy parameter set and the posture, e.g., theactivity levels 64 collected while that therapy parameter set was activeand the patient 12 was in that posture.

In some embodiments, processor 46 also determines a value of one or moreposture metrics for each of therapy parameter sets 60 based on thepostures 62 associated with the parameter sets 60. Processor 46 maystore the determined posture metric values 68 within memory 48 with anindication as to which of therapy parameter sets 60 the determinedvalues are associated with. For example, processor 46 may determine anamount of time that patient 12 was in a posture when a therapy parameterset 60 was active, e.g., an average amount of time over a period of timesuch as an hour, as a posture metric 68 for the therapy parameter set60. Processor 46 may additionally or alternatively determine percentagesof time that patient 12 assumed one or more postures while a therapyparameter set was active as a posture metric 68 for the therapyparameter set 60. As another example, processor 46 may determine anaverage number of transitions over a period of time, such as an hour,when a therapy parameter set 60 was active as a posture metric 68 forthe therapy parameter set 60.

In some embodiments, processor 46 determines a plurality of posturemetric values for each of the plurality of therapy parameter sets 60,and determines an overall posture metric value for a parameter set basedon the values of the individual posture metrics for that parameter set.For example, processor 46 may use the plurality of individual posturemetric values as indices to identify an overall posture metric valuefrom a look-up table stored in memory 48. Processor 46 may select theoverall posture metric value from a predetermined scale of posturemetric values, which may be numeric, such as posture metric values from1-10.

The various thresholds described above as being used by processor 46 todetermine activity levels 62, postures 64, posture metric values 68, andactivity metric values 70 may be stored in memory 48 as thresholds 66,as illustrated in FIG. 3. In some embodiments, threshold values 66 maybe programmable by a user, e.g., a clinician, using one of programmers20, 26. Further, the clinician may select which activity metric values70 and posture metric values 68 are to be determined via one ofprogrammers 20, 26.

As shown in FIG. 2, IMD 14 includes a telemetry circuit 50, andprocessor 46 communicates with programmers 20, 26, or another computingdevice, via telemetry circuit 50. In some embodiments, processor 46provides information identifying therapy parameter sets 60, postures 62,posture metric values 68, and activity metric values 70 associated withthe parameter sets to one of programmers 20, 26, or the other computingdevice, and the programmer or other computing device displays a list oftherapy parameter sets 60 and associated postures 62 and metric values68, 70. In other embodiments, as will be described in greater detailbelow, processor 46 does not determine metric values 68, 70. Instead,processor 46 provides postures 62 and activity levels 64 to theprogrammer 20, 26 or other computing device via telemetry circuit 50,and the programmer or computing device determines metric values 68, 70for display to the clinician. Further, in other embodiments, processor46 provides samples of signals generated by sensors 40 to the programmer20, 26 or other computing device via telemetry circuit 50, and theprogrammer or computing device may determine postures 62, activitylevels 64, and metric values 68, 70 based on the samples. Some externalmedical device embodiments of the invention include a display, and aprocessor of such an external medical device may both determine metricvalues 68, 70 and display a list of therapy parameter sets 60 andassociated metric values to a clinician.

FIG. 4 is a flow diagram illustrating an example method for collectingposture and activity information that may be employed by IMD 14. IMD 14monitors one or more signals generated by sensors 40 (80). For example,IMD 14 may monitor signals generated by a plurality of orthogonallyaligned accelerometers, as described above. Each of the accelerometersmay be substantially aligned with a respective axis of the body ofpatient 12.

IMD 14 identifies a posture 62 (82). For example, IMD 14 may identify acurrent posture of patient 12 at a time when the signals generated bysensors 40 are sampled, or may identify the occurrence of a transitionbetween postures. IMD 14 also determines an activity level 64 (84). Forexample, IMD 14 may determine a number of activity counts based on theone or more of the accelerometer signals, as described above.

IMD 14 identifies the current therapy parameter set 60, and associatesthe identified posture 62 with the current therapy parameter set 60(86). For example, IMD 14 may store information describing theidentified posture 62 within memory 48 with an indication of the currenttherapy parameter set 60. IMD 14 also associates the determined activitylevel 64 with the posture patient 12 is currently in, e.g., the mostrecently identified posture 62, and the current therapy parameter set 60(86). For example, IMD 14 may store the determined activity level 64 inmemory 48 with an indication of the current posture 62 and therapyparameter set 60. IMD 14 may then update one or more posture and/oractivity metric values 68, 70 associated with the current therapyparameter set 60 and posture 62, e.g., the current therapy parameterset/posture pair, as described above (88).

IMD 14 may periodically perform the example method illustrated in FIG.4, e.g., may periodically monitor the signals generated by sensors 40(80), determine postures 62 and activity levels 64 (82, 84), andassociate the determined postures 62 and activity levels 64 with acurrent therapy parameter set 60 (86). Postures 62 and activity levels64 need not be determined with the same frequency. Further, as describedabove, IMD 14 may only perform the example method during daytime hours,or when patient is awake and not attempting to sleep, and/or only inresponse to an indication received from patient 12 via patientprogrammer 20. Additionally, IMD 14 need not update metric values 68, 70each time a posture 62 or activity level 64 is determined. In someembodiments, for example, IMD 14 may store postures 62 and activitylevels 64 within memory 48, and may determine the metric values 68, 70upon receiving a request for the values from one of programmers 20, 26.

Further, in some embodiments, as will be described in greater detailbelow, IMD 14 does not determine the metric values 68, 70, but insteadprovides postures 62 and activity levels 64 to a computing device, suchas clinician programmer 20 or patient programmer 26. In suchembodiments, the computing device determines the metric valuesassociated with each of the therapy parameter set/posture pair.Additionally, as described above, IMD 14 need not determine postures 62and activity levels 64, but may instead store samples of the signalsgenerated by sensors 40. In such embodiments, the computing device maydetermine postures, activity levels, and metric values based on thesamples.

FIG. 5 is a flow diagram illustrating an example method for collectingactivity information based on patient posture that may be employed byIMD 14. In some embodiments, IMD 14 need not store postures 62,determine posture metrics 68, or associate activity levels 64 withparticular postures. Rather, as illustrated in FIG. 5, IMD 14 may limitactivity information collection, e.g., determination of activity levels64, to times when patient 12 is in a target posture, e.g., a posture ofinterest. A target posture may be, for example, upright, e.g., standingor sitting, or may be only standing. In some cases, the activity ofpatient 12 while in such target postures may be particularly indicativeof the effectiveness of a therapy.

IMD 14 monitors one or more signals generated by sensors 40 (90). Forexample, IMD 14 may monitor signals generated by a plurality oforthogonally aligned accelerometers, as described above. Each of theaccelerometers may be substantially aligned with a respective axis ofthe body of patient 12.

IMD 14 determines whether patient 12 is upright based upon the signals(92). If patient 12 is upright, IMD 14 determines an activity level 64(94), and associates the determined activity level 64 with a current setof therapy parameters 60 (96). For example, IMD 14 may determine anumber of activity counts based on the one or more of the accelerometersignals, as described above, and may store the determined activity level64 in memory 48 with an indication of the current therapy parameter set60. IMD 14 may then update one or more activity metric values 68associated with the current therapy parameter set 60 (98).

As is the case with the example method illustrated in FIG. 4, IMD 14 mayperiodically perform the example method illustrated in FIG. 5, e.g., mayperiodically monitor the signals generated by sensors 40 (90), determinewhether patient 12 is in a posture of interest (92), determine activitylevels 64 when patient 12 is in the posture of interest (94), andassociate the determined activity levels 64 with a current therapyparameter set 60 (96). Further, as described above, IMD 14 may onlyperform the example method during daytime hours, or when patient isawake and not attempting to sleep, and/or only in response to anindication received from patient 12 via patient programmer 20.Additionally, IMD 14 need not update activity metric values 70 each timean activity level 64 is determined. In some embodiments, for example,IMD 14 may store activity levels 64 within memory, and may determine theactivity metric values 70 upon receiving a request for the values fromone of programmers 20, 26.

Further, in some embodiments, as will be described in greater detailbelow, IMD 14 does not determine the activity metric values 70, butinstead provides activity levels 64 to a computing device, such asclinician programmer 20 or patient programmer 26. In such embodiments,the computing device determines the activity metric values associatedwith each of the therapy parameter sets. Additionally, as describedabove, IMD 14 need not determine postures 62 and activity levels 64, butmay instead store samples of the signals generated by sensors 40. Insuch embodiments, the computing device may determine postures, activitylevels, and activity metric values based on the samples.

FIG. 6 is a block diagram illustrating clinician programmer 20. Aclinician may interact with a processor 100 via a user interface 102 inorder to program therapy for patient 12, e.g., specify therapy parametersets. Processor 100 may provide the specified therapy parameter sets toIMD 14 via telemetry circuit 104.

At another time, e.g., during a follow up visit, processor 100 mayreceive information identifying a plurality of therapy parameter sets 60from IMD 14 via telemetry circuit 104, which may be stored in a memory106. The therapy parameter sets 60 may include the originally specifiedparameter sets, and parameter sets resulting from manipulation of one ormore therapy parameters by patient 12 using patient programmer 26. Insome embodiments, processor 100 also receives posture and activitymetric values 68, 70 associated with the therapy parameter sets 60, andstores the metric values in memory 106. In other embodiments, processor100 may receive postures 62 and activity levels 64 associated with thetherapy parameter sets 60, and determine values 68, 70 of one or moremetrics for each of the plurality of therapy parameter sets 60 using anyof the techniques described above with reference to IMD 14 and FIGS. 2and 3. In still other embodiments, processor 100 receives samples ofsignals generated by sensors 40, either from IMD 14, from a separatemonitor that includes or is coupled to sensors 40, or directly fromsensors 40, and determines postures 62, activity levels 64 and metricvalues 68, 70 based on signals using any of the techniques describedabove with reference to IMD 14 and FIGS. 2 and 3.

Upon receiving or determining posture and activity metric values 68, 70,processor 100 may generate a list of the therapy parameter sets 60 andassociated metric values 68, 70, and present the list to the clinician.User interface 102 may include display 22, and processor 100 may displaythe list via display 22. The list of therapy parameter sets 60 may beordered according to a metric value, and where a plurality of metricvalues are associated with each of the parameter sets, the list may beordered according to the values of the metric selected by the clinician.Processor 100 may also present other posture or activity information toa user, such as a trend diagram of activity or posture over time, or ahistogram, pie chart, or other illustration of percentages of time thatpatient 12 was within certain postures 62, or activity levels 64 werewithin certain ranges. Processor 100 may generate such charts ordiagrams using postures 62 and activity levels 64 associated with aparticular one of the therapy parameter sets 60, or all of the postures62 and activity levels 64 recorded by IMD 14.

User interface 102 may include display 22 and keypad 24, and may alsoinclude a touch screen or peripheral pointing devices as describedabove. Processor 100 may include a microprocessor, a controller, a DSP,an ASIC, an FPGA, discrete logic circuitry, or the like. Memory 106 mayinclude program instructions that, when executed by processor 100, causeclinician programmer 20 to perform the functions ascribed to clinicianprogrammer 20 herein. Memory 106 may include any volatile, non-volatile,fixed, removable, magnetic, optical, or electrical media, such as a RAM,ROM, CD-ROM, hard disk, removable magnetic disk, memory cards or sticks,NVRAM, EEPROM, flash memory, and the like.

FIG. 7 illustrates an example list 110 of therapy parameter sets 60 andassociated metric values 68, 70 that may be presented by clinicianprogrammer 20. Each row of example list 110 includes an identificationof one of therapy parameter sets 60, the parameters of the therapyparameter set, and an identification of the postures assumed by patient12 when the parameter set was active, e.g., the categories of postures62 associated with the parameter set. In the illustrated example, eachof the listed therapy parameter sets 60 is associated with two posturalcategories, i.e., upright and recumbent.

Each of the listed therapy parameter sets is also associated with twovalues 70 for each of two activity metrics, i.e., an activity metricvalue 70 for each posture associated with the therapy parameter set. Theactivity metrics illustrated in FIG. 7 are a percentage of time active,and an average number of activity counts per hour. IMD 14 or programmer20 may determine the average number of activity counts per hour for oneof the illustrated therapy parameter set/posture pairs by identifyingthe total number of activity counts associated with the parameter setand the posture, and the total amount of time that patient was in thatposture while IMD 14 was using the parameter set. IMD 14 or programmer20 may determine the percentage of time active for one of theillustrated therapy parameter set/posture pairs by comparing eachactivity level associated with the parameter set and posture to an“active” threshold, and determining the percentage of activity levelsabove the threshold. As illustrated in FIG. 7, IMD 14 or programmer 20may also compare each activity level for the therapy parameter/posturepair set to an additional, “high activity” threshold, and determine apercentage of activity levels above that threshold.

As illustrated in FIG. 7, list 110 may also include a posture metric 68.In the illustrated example, list 110 includes as posture metrics 68 foreach therapy parameter set the percentage of time that patient 12 was ineach posture when the therapy parameter set was active. Programmer 20may order list 110 according to a user-selected one of the metrics 68,70.

FIG. 8 is a flow diagram illustrating an example method for displaying alist of therapy parameter sets 60 and associated metric values 68, 70that may be employed by a clinician programmer 20. Although describedwith reference to clinician programmer 20, patient programmer 26 oranother computing device may perform the method illustrated by FIG. 6.

Programmer 20 receives information identifying therapy parameter sets 60and associated postures 62 and activity levels 64 from IMD 14 (120).Programmer 20 then determines one or more posture and activity metricvalues 68, 70 for each of the therapy parameter sets based on thepostures 62 and activity levels 64 associated with the therapy parametersets (122). In other embodiments, IMD 14 determines the metric values,and provides them to programmer 20, or provides samples of signalsassociated with therapy parameter sets to programmer 20 fordetermination of metric values, as described above. After receiving ordetermining metric values 68, 70, programmer 20 presents a list 110 oftherapy parameter sets 60 and associated metric values 68, 70 to theclinician, e.g., via display 22 (124). Programmer 20 may order list 110of therapy parameter sets 60 according to the associated metric values,and the clinician may select according to which of a plurality ofmetrics list 110 is ordered via a user interface 82 (126).

In some embodiments, as discussed above, one or more of IMD 14,programmers 20, 26, or another computing device may conduct asensitivity analysis of one or more posture and/or activity metricvalues 68, 70 to identify one or more therapy parameter sets for use indelivering therapy to patient 12. The sensitivity analysis may beperformed as an alternative or in addition to presenting posture andactivity information to a user for evaluation of therapy parameter sets.

The IMD, programmer, or the other computing device may perform thesensitivity analysis to identify a value for each therapy parametersthat defines substantially maximum or minimum posture and/or activitymetric values. In other words, the sensitivity analysis identifiestherapy parameter values that yield the “best” metric values. The IMD,programmer, or other computing device then identifies one or morebaseline therapy parameter sets that include the identified parametervalues, and stores the baseline therapy parameter sets as therapyparameter sets 60 or separately within memory 48 of IMD 14. IMD 14 maythen deliver stimulation according to the baseline therapy parametersets. The baseline therapy parameter sets include the values forrespective therapy parameters that produced the best activity and/orposture metric values.

In some embodiments, the IMD, programmer, or other computing device mayadjust the therapy delivered by IMD 14 based on a change in the activityor posture metric values 68, 70. In particular, the IMD, programmer, orother computing device may perturb one or more therapy parameters of abaseline therapy parameter set, such as pulse amplitude, pulse width,pulse rate, duty cycle, and duration, to determine if the currentposture and/or activity metric values improve or worsen duringperturbation. In some embodiments, values of the therapy parameters maybe iteratively and incrementally increased or decreased untilsubstantially maximum or minimum values of the posture and/or activitymetric are again identified

FIG. 9 is a flow diagram illustrating an example method for identifyinga therapy parameter set, e.g., a baseline therapy parameter set, basedon collected posture and/or activity information that may be employed byIMD 14. For ease of description, a number of the actions that are partof the method illustrated in FIG. 9 are described as being performed byIMD 14. However, in some embodiments, as discussed above, an externalcomputing device, such as one of programmers 20, 26, and moreparticularly the processor of such a computing device, may perform oneor more of the activities attributed to IMD 14 below.

IMD 14 receives a therapy parameter range for therapy parameters (130)from a clinician using clinician programmer 20 via telemetry circuit 50.The range may include minimum and maximum values for each of one or moreindividual therapy parameters, such as pulse amplitude, pulse width,pulse rate, duty cycle, duration, dosage, infusion rate, electrodeplacement, and electrode selection. The range may be stored in memory48, as described in reference to FIG. 3.

Processor 46 then randomly or non-randomly generates a plurality oftherapy parameter sets 60 with individual parameter values selected fromthe range (132). The generated therapy parameter sets 60 maysubstantially cover the range, but do not necessarily include each andevery therapy parameter value within the therapy parameter range, orevery possible combination of therapy parameters within the range. Thegenerated therapy parameter sets 60 may also be stored in memory 48.

IMD 14 monitors at least one posture or activity metric 68, 70 ofpatient 12 for each of the randomly or non-randomly generated therapyparameter sets 60 spanning the range (134). The values of the metricscorresponding to each of the therapy parameter sets 60 may be stored inmemory 48 of IMD 14, as described above. IMD 14 then conducts asensitivity analysis of the one or more posture and/or activity metricsfor each of the therapy parameters, e.g., each of pulse amplitude, pulsewidth, pulse rate and electrode configuration (136). The sensitivityanalysis determines a value for each of the therapy parameters thatproduced a substantially maximum or minimum value of the one or moremetrics. One or more baseline therapy parameter sets are then determinedbased on the therapy parameter values identified by the sensitivityanalysis (138). The baseline therapy parameter sets include combinationsof the therapy parameter values individually observed to producesubstantially maximum or minimum values of the one or more posture oractivity metrics 68, 70. The baseline therapy parameter sets may also bestored with therapy parameters sets 60 in memory 48. In someembodiments, the baseline therapy parameter sets may be storedseparately from the generated therapy parameter sets.

After this initial baseline therapy parameter set identification phaseof the example method, IMD 14 may control delivery of the therapy basedon the baseline therapy parameter sets. Periodically during the therapy,IMD 14 checks to ensure that the baseline therapy parameter setscontinues to define substantially maximum or minimum posture and/oractivity metric values for patient 12. IMD 14 first perturbs at leastone of the therapy parameter values of a baseline therapy parameter set(140). The perturbation comprises incrementally increasing and/ordecreasing the therapy parameter value, or changing electrodepolarities. A perturbation period may be preset to occur at a specifictime, in response to a physiological parameter monitored by the IMD, orin response to a signal from the patient or clinician. The perturbationmay be applied for a single selected parameter or two or moreparameters, or all parameters in the baseline therapy parameter set.Hence, numerous parameters may be perturbed in sequence. For example,upon perturbing a first parameter and identifying a value that producesa maximum or minimum metric value, a second parameter may be perturbedwith the first parameter value fixed at the identified value. Thisprocess may continue for each of the parameters in a baseline therapyparameter set, and for each of a plurality of baseline therapy parametersets.

Upon perturbing a parameter value, IMD 14 then compares a value of theone or more metrics defined by the perturbed therapy parameter set to acorresponding value of the metric defined by the baseline therapyparameter set during the initial baseline identification phase (142). Ifthe metric values do not improve with the perturbation, IMD 14 maintainsthe unperturbed baseline therapy parameter set values (144). If themetric values do improve with the perturbation, IMD 14 perturbs thetherapy parameter value again (146) in the same direction that definedthe previous improvement in the metric values. IMD 14 compares a valueof the metrics defined by the currently perturbed therapy parameter setto the metric values defined by the therapy parameter set of theprevious perturbation (148). If the metric values do not improve, IMD 14updates the baseline therapy parameter set based on the therapyparameter values from the previous perturbation (150). If the metricvalues improve again, IMD 14 continues to perturb the therapy parametervalue (146).

Periodically checking the values of one or more metrics for the baselinetherapy parameter set during this perturbation phase of the examplemethod allows IMD 14 to consistently deliver a therapy to patient 12that defines a substantially maximum or minimum posture and/or activitymetric values 68, 70. This may allow the patient's symptoms to becontinually managed even as the patient's physiological parameters andsymptoms change.

Various embodiments of the invention have been described. However, oneskilled in the art will recognize that various modifications may be madeto the described embodiments without departing from the scope of theinvention. For example, the invention may be embodied as acomputer-readable medium that includes instructions to cause a processorto perform any of the methods described herein.

As another example, although described herein primarily in the contextof treatment of pain with an implantable neurostimulator, the inventionis not so limited. The invention may be embodied in any implantablemedical device that delivers a therapy, such as a cardiac pacemaker oran implantable pump. Further, the invention may be implemented via anexternal, e.g., non-implantable, medical device. In such embodiments,the external medical device itself may include a user interface anddisplay to present activity information to a user, such as a clinicianor patient, for evaluation of therapy parameter sets.

Additionally, the invention is not limited to embodiments in which aprogramming device receives information from the medical device, orpresents information to a user. Other computing devices, such ashandheld computers, desktop computers, workstations, or servers mayreceive information from the medical device and present information to auser as described herein with reference to programmers 20, 26. Acomputing device, such as a server, may receive information from themedical device and present information to a user via a network, such asa local area network (LAN), wide area network (WAN), or the Internet.Further, in some embodiments, the medical device is an external medicaldevice, and may itself include user interface and display to presentactivity information to a user, such as a clinician or patient, forevaluation of therapy parameter sets.

As another example, the invention may be embodied in a trialneurostimulator, which is coupled to percutaneous leads implanted withinthe patient to determine whether the patient is a candidate forneurostimulation, and to evaluate prospective neurostimulation therapyparameter sets. Similarly, the invention may be embodied in a trial drugpump, which is coupled to a percutaneous catheter implanted within thepatient to determine whether the patient is a candidate for animplantable pump, and to evaluate prospective therapeutic agent deliveryparameter sets. Posture and activity metric values collected during useof the trial neurostimulator or pump may be used by a clinician toevaluate the prospective therapy parameter sets, and select parametersets for use by the later implanted non-trial neurostimulator or pump.The posture and activity metric values may be collected by the trialdevice in the manner described above with reference to IMD 14, or by aprogrammer 20, 26 or other computing device, as described above. After atrial period, a programmer or computing device may present a list ofprospective parameter sets and associated metric values to a clinician.The clinician may use the list to identify potentially efficaciousparameter sets, and may program a permanent implantable neurostimulatoror pump for the patient with the identified parameter sets.

In some embodiments, a trial neurostimulator or pump, or a programmer orother external computing device, may perform a sensitivity analysis asdescribed above on a range of therapy parameters tested by the trialneurostimulator or pump during a trialing period. A permanentimplantable neurostimulator or pump may be programmed with the one ormore baseline therapy parameter sets identified by the sensitivityanalysis, and may periodically perturb the baseline therapy parametersets to maintain effective therapy in the manner described above.

Additionally, as discussed above, the invention is not limited toembodiments in which the therapy delivering medical device monitorsactivity or posture. In some embodiments, a separate monitoring devicemonitors values of one or more physiological parameters of the patientinstead of, or in addition to, a therapy delivering medical device. Themonitor may include a processor 46 and memory 48, and may be coupled toor include sensors 40, as illustrated above with reference to IMD 14 andFIGS. 2 and 3.

The monitor may identify postures and activity levels based on thevalues of the monitored physiological parameter values, and determineposture and activity metric values based on the identified postures andactivity levels as described herein with reference to IMD 14.Alternatively, the monitor may transmit indications of posture andactivity levels to an IMD, programmer, or other computing device, whichmay then determine posture and activity metric values. As anotheralternative, the monitor may transmit recorded physiological parametervalues to an IMD, programmer, or other computing device fordetermination of postures, activity levels, and/or posture and activitymetric values.

FIG. 10 is a conceptual diagram illustrating a monitor 160 that monitorsthe posture and activity of the. patient instead of, or in addition to,a therapy delivering medical device. In the illustrated example, monitor160 is configured to be attached to or otherwise carried by a belt 162,and may thereby be worn by patient 12. FIG. 10 also illustrates varioussensors 40 that may be coupled to monitor 160 by leads, wires, cables,or wireless connections.

In the illustrated example, patient 12 wears an ECG belt 164. ECG belt164 incorporates a plurality of electrodes for sensing the electricalactivity of the heart of patient 12. The heart rate and, in someembodiments, ECG morphology of patient 12 may monitored by monitor 150based on the signal provided by ECG belt 164. Examples of suitable belts164 for sensing the heart rate of patient 12 are the “M” and “F” heartrate monitor models commercially available from Polar Electro. In someembodiments, instead of belt 160, patient 12 may wear of plurality ofECG electrodes attached, e.g., via adhesive patches, at variouslocations on the chest of the patient, as is known in the art. An ECGsignal derived from the signals sensed by such an array of electrodesmay enable both heart rate and ECG morphology monitoring, as is known inthe art.

As shown in FIG. 10, patient 12 may also wear a respiration belt 166that outputs a signal that varies as a function of respiration of thepatient. Respiration belt 166 may be a plethysmograpy belt, and thesignal output by respiration belt 166 may vary as a function of thechanges is the thoracic or abdominal circumference of patient 12 thataccompany breathing by the patient. An example of a suitable belt 166 isthe TSD201 Respiratory Effort Transducer commercially available fromBiopac Systems, Inc. Alternatively, respiration belt 166 may incorporateor be replaced by a plurality of electrodes that direct an electricalsignal through the thorax of the patient, and circuitry to sense theimpedance of the thorax, which varies as a function of respiration ofthe patient, based on the signal. In some embodiments, ECG andrespiration belts 164 and 166 may be a common belt worn by patient 12,and the relative locations of belts 164 and 166 depicted in FIG. 10 aremerely exemplary.

Monitor 160 may additionally or alternatively include or be coupled toany of the variety of sensors 40 described above with reference to FIGS.2 and 3, which output signals that vary as a function of activity levelor posture. For example, monitor 160 may include or be coupled to aplurality of orthogonally aligned accelerometers, as described above.

These and other embodiments are within the scope of the followingclaims.

1. A method comprising: monitoring a plurality of signals, each of thesignals generated by a sensor as a function of at least one of activityor posture of a patient; periodically identifying a posture of thepatient based on at least one of the signals; associating each of theidentified postures with a therapy parameter set currently used by amedical device to deliver a therapy to a patient when the posture isidentified; periodically determining an activity level of the patientbased on at least one of the signals; associating each of the determinedactivity levels with a therapy parameter set currently used by a medicaldevice to deliver a therapy to a patient when the activity level isdetermined and a current one of the periodically identified postures;and for each of a plurality of therapy parameter sets used by themedical device to deliver therapy to the patient, determining a value ofan activity metric for each of the periodically identified posturesassociated with the therapy parameter set based on the activity levelsassociated with the posture and the therapy parameter set.
 2. The methodof claim 1, further comprising presenting a list of the therapyparameter sets, postures associated with the therapy parameter sets, andactivity metric values associated with the postures and therapyparameter sets to a user.
 3. The method of claim 2, further comprising:determining a value of a posture metric for each of the therapyparameter sets based on the identified postures associated with thetherapy parameter sets; and presenting the posture metric values to theuser within the list.
 4. The method of claim 1, further comprising:conducting a sensitivity analysis of the activity metric for each of theplurality of therapy parameter sets; and determining a baseline therapyparameter set based on the sensitivity analysis.
 5. The method of claim1, further comprising: determining a value of a posture metric for eachof the therapy parameter sets based on the identified posturesassociated with the therapy parameter sets; conducting a sensitivityanalysis of the posture metric for each of the plurality of therapyparameter sets; and determining a baseline therapy parameter set basedon the sensitivity analysis.
 6. A medical system comprising: a pluralityof sensors, each of the sensors generating a signal as a function of atleast one of activity or posture of a patient; a medical device thatdelivers a therapy to the patient; and a processor that monitors thesignals generated by the sensors, periodically identifies a posture ofthe patient based on at least one of the signals, associates each of theidentified postures with a therapy parameter set currently used by amedical device to deliver a therapy to a patient when the posture isidentified, periodically determines an activity level of the patientbased on at least one of the signals, associates each of the determinedactivity levels with a therapy parameter set currently used by a medicaldevice to deliver a therapy to a patient when the activity level isdetermined and a current one of the periodically identified postures,and, for each of a plurality of therapy parameter sets used by themedical device to deliver therapy to the patient, determines a value ofan activity metric for each of the periodically identified posturesassociated with the therapy parameter set based on the activity levelsassociated with the posture and the therapy parameter set.
 7. Themedical system of claim 6, wherein the medical device includes theprocessor.
 8. The medical system of claim 6, further comprising acomputing device that includes the processor.
 9. The medical system ofclaim 6, further comprising a display to present a list of the therapyparameter sets, postures associated with the therapy parameter sets, andactivity metric values associated with the postures and therapyparameter sets to a user.
 10. The medical system of claim 9, wherein theprocessor determines a value of a posture metric for each of the therapyparameter sets based on the identified postures associated with thetherapy parameter sets, and the display presents the posture metricvalues to the user within the list.
 11. The medical system of claim 6,wherein the processor conducts a sensitivity analysis of the activitymetric for each of the plurality of therapy parameter sets, anddetermines a baseline therapy parameter set based on the sensitivityanalysis.
 12. The medical system of claim 6, wherein the processordetermines a value of a posture metric for each of the therapy parametersets based on the identified postures associated with the therapyparameter sets, conducts a sensitivity analysis of the posture metricfor each of the plurality of therapy parameter sets, and determines abaseline therapy parameter set based on the sensitivity analysis. 13.The medical system of claim 6, wherein the sensors comprise a pluralityof orthogonally aligned accelerometers.
 14. The medical system of claim6, wherein the medical device comprises at least one of an implantableneurostimulator and an implantable pump.
 15. The medical system of claim6, wherein the medical device comprises at least one of a trialneurostimulator and a trial pump.
 16. A computer-readable mediumcomprising instructions that cause a programmable processor to: monitora plurality of signals, each of the signals generated by a sensor as afunction of at least one of activity or posture of a patient;periodically identify a posture of the patient based on at least one ofthe signals; associate each of the identified postures with a therapyparameter set currently used by a medical device to deliver a therapy toa patient when the posture is identified; periodically determine anactivity level of the patient based on at least one of the signals;associate each of the determined activity levels with a therapyparameter set currently used by a medical device to deliver a therapy toa patient when the activity level is determined and a current one of theperiodically identified postures; and for each of a plurality of therapyparameter sets used by the medical device to deliver therapy to thepatient, determine a value of an activity metric for each of theperiodically identified postures associated with the therapy parameterset based on the activity levels associated with the posture and thetherapy parameter set.
 17. The computer-readable medium of claim 16,further comprising instructions that cause a programmable processor topresent a list of the therapy parameter sets, postures associated withthe therapy parameter sets, and activity metric values associated withthe postures and therapy parameter sets to a user.
 18. Thecomputer-readable medium of claim 17, further comprising instructionsthat cause a programmable processor to: determine a value of a posturemetric for each of the therapy parameter sets based on the identifiedpostures associated with the therapy parameter sets; and present theposture metric values to the user within the list.
 19. A methodcomprising: monitoring a plurality of signals, each of the signalsgenerated by a sensor as a function of at least one of activity orposture of a patient; determining whether the patient is in targetposture based on at least one of the signals; periodically determiningan activity level of the patient based on at least one of the signalswhen the patient is in the target posture; associating each of thedetermined activity levels with a current therapy parameter set; and foreach of a plurality of therapy parameter sets used by the medical deviceto deliver therapy to the patient, determining a value of an activitymetric based on the activity levels associated with the therapyparameter set.
 20. The method of claim 19, further comprising presentinga list of the therapy parameter sets and activity metric valuesassociated with the therapy parameter sets to a user.
 21. A medicalsystem comprising: a plurality of sensors, each of the sensorsgenerating a signal as a function of at least one of activity or postureof a patient; a medical device that delivers a therapy to the patient;and a processor that monitors the signals generated by the sensors,periodically identifies a posture of the patient based on at least oneof the signals, determines whether the patient is in target posturebased on at least one of the signals, periodically determines anactivity level of the patient based on at least one of the signals whenthe patient is in the target posture, associates each of the determinedactivity levels with a current therapy parameter set, and for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, determines a value of an activity metricbased on the activity levels associated with the therapy parameter set.22. The medical system of claim 21, wherein the processor presents alist of the therapy parameter sets and activity metric values associatedwith the therapy parameter sets to a user.
 23. The medical system ofclaim 21, wherein the sensors comprise a plurality of orthogonallyaligned accelerometers.
 24. The medical system of claim 21, wherein themedical device comprises at least one of an implantable neurostimulatorand an implantable pump.
 25. The medical system of claim 21, wherein themedical device comprises at least one of a trial neurostimulator and atrial pump.
 26. The medical system of claim 21, wherein the medicaldevice includes the processor.
 27. The medical system of claim 21,further comprising a computing device that includes the processor.
 28. Acomputer-readable medium comprising instructions that cause aprogrammable processor to: monitor a plurality of signals, each of thesignals generated by a sensor as a function of at least one of activityor posture of a patient; determine whether the patient is in targetposture based on at least one of the signals; periodically determine anactivity level of the patient based on at least one of the signals whenthe patient is in the target posture; associate each of the determinedactivity levels with a current therapy parameter set; and for each of aplurality of therapy parameter sets used by the medical device todeliver therapy to the patient, determine a value of an activity metricbased on the activity levels associated with the therapy parameter set.29. The computer-readable medium of claim 28, further comprisingpresenting a list of the therapy parameter sets and activity metricvalues associated with the therapy parameter sets to a user.